// default package
// Generated 28 Jul, 2014 8:04:07 PM by Hibernate Tools 3.4.0.CR1
package com.galaxy.bean;

import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToOne;
import javax.persistence.PrimaryKeyJoinColumn;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.UniqueConstraint;
import org.hibernate.annotations.GenericGenerator;
import org.hibernate.annotations.Parameter;

/**
 * SalesFlatShipmentGrid generated by hbm2java
 */
@Entity
@Table(name = "sales_flat_shipment_grid", catalog = "magento", uniqueConstraints = @UniqueConstraint(columnNames = "increment_id"))
public class SalesFlatShipmentGrid implements java.io.Serializable {

	private int entityId;
	private SalesFlatShipment salesFlatShipment;
	private CoreStore coreStore;
	private BigDecimal totalQty;
	private int orderId;
	private Integer shipmentStatus;
	private String incrementId;
	private String orderIncrementId;
	private Date createdAt;
	private Date orderCreatedAt;
	private String shippingName;

	public SalesFlatShipmentGrid() {
	}

	public SalesFlatShipmentGrid(SalesFlatShipment salesFlatShipment,
			int orderId) {
		this.salesFlatShipment = salesFlatShipment;
		this.orderId = orderId;
	}

	public SalesFlatShipmentGrid(SalesFlatShipment salesFlatShipment,
			CoreStore coreStore, BigDecimal totalQty, int orderId,
			Integer shipmentStatus, String incrementId,
			String orderIncrementId, Date createdAt, Date orderCreatedAt,
			String shippingName) {
		this.salesFlatShipment = salesFlatShipment;
		this.coreStore = coreStore;
		this.totalQty = totalQty;
		this.orderId = orderId;
		this.shipmentStatus = shipmentStatus;
		this.incrementId = incrementId;
		this.orderIncrementId = orderIncrementId;
		this.createdAt = createdAt;
		this.orderCreatedAt = orderCreatedAt;
		this.shippingName = shippingName;
	}

	@GenericGenerator(name = "generator", strategy = "foreign", parameters = @Parameter(name = "property", value = "salesFlatShipment"))
	@Id
	@GeneratedValue(generator = "generator")
	@Column(name = "entity_id", unique = true, nullable = false)
	public int getEntityId() {
		return this.entityId;
	}

	public void setEntityId(int entityId) {
		this.entityId = entityId;
	}

	@OneToOne(fetch = FetchType.LAZY)
	@PrimaryKeyJoinColumn
	public SalesFlatShipment getSalesFlatShipment() {
		return this.salesFlatShipment;
	}

	public void setSalesFlatShipment(SalesFlatShipment salesFlatShipment) {
		this.salesFlatShipment = salesFlatShipment;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "store_id")
	public CoreStore getCoreStore() {
		return this.coreStore;
	}

	public void setCoreStore(CoreStore coreStore) {
		this.coreStore = coreStore;
	}

	@Column(name = "total_qty", precision = 12, scale = 4)
	public BigDecimal getTotalQty() {
		return this.totalQty;
	}

	public void setTotalQty(BigDecimal totalQty) {
		this.totalQty = totalQty;
	}

	@Column(name = "order_id", nullable = false)
	public int getOrderId() {
		return this.orderId;
	}

	public void setOrderId(int orderId) {
		this.orderId = orderId;
	}

	@Column(name = "shipment_status")
	public Integer getShipmentStatus() {
		return this.shipmentStatus;
	}

	public void setShipmentStatus(Integer shipmentStatus) {
		this.shipmentStatus = shipmentStatus;
	}

	@Column(name = "increment_id", unique = true, length = 50)
	public String getIncrementId() {
		return this.incrementId;
	}

	public void setIncrementId(String incrementId) {
		this.incrementId = incrementId;
	}

	@Column(name = "order_increment_id", length = 50)
	public String getOrderIncrementId() {
		return this.orderIncrementId;
	}

	public void setOrderIncrementId(String orderIncrementId) {
		this.orderIncrementId = orderIncrementId;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "created_at", length = 19)
	public Date getCreatedAt() {
		return this.createdAt;
	}

	public void setCreatedAt(Date createdAt) {
		this.createdAt = createdAt;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "order_created_at", length = 19)
	public Date getOrderCreatedAt() {
		return this.orderCreatedAt;
	}

	public void setOrderCreatedAt(Date orderCreatedAt) {
		this.orderCreatedAt = orderCreatedAt;
	}

	@Column(name = "shipping_name")
	public String getShippingName() {
		return this.shippingName;
	}

	public void setShippingName(String shippingName) {
		this.shippingName = shippingName;
	}

}
